package com.stefan.service.impl;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.ScanOptions;
import org.springframework.stereotype.Component;

import java.util.List;
import java.util.Map;

@Component
public class CartServiceImpl {
    private static final String CART_KEY_PREFIX = "cart:";
    @Autowired
    private RedisTemplate redisTemplate;
    public void addItemToCart(String userId, String productId, int quantity) {
        // 将商品添加到用户的购物车中
        redisTemplate.opsForHash().put(CART_KEY_PREFIX + userId, productId, quantity);
    }
    public Map getAllItmeFromCart(String userId) {
        // 获取用户购物车中的商品
        return redisTemplate.opsForHash().entries(CART_KEY_PREFIX + userId);
    }
    public Object getItmeFromCart(String userId, String productId) {
        // 获取用户购物车中的商品
        Object o = redisTemplate.opsForHash().get(CART_KEY_PREFIX + userId, productId);
        return o;
    }
    public void removeItemFromCart(String userId, String productId) {
        // 从用户的购物车中移除商品
        redisTemplate.opsForHash().delete(CART_KEY_PREFIX + userId, productId);
    }
    public void clearCart(String userId) {
        // 清空用户的购物车
        redisTemplate.delete(CART_KEY_PREFIX + userId);
    }
}
